<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // var arrs = [1,1,1,1,1,2,2,3,3,3,3,2,3,6,7,7,8];
        // var data = [...new Set(arrs)];
        // console.log(data);


        // ... 两种功能  
        // 展开     数组 对象  Set Map 意义 就是去掉外边包裹的部分
        // 合并     解构的时候  形参  


        // 展开 
        // var arr2 = [[1,2,3,4,5],[6,7,8,9],[10,11,12,13]];
        // var res = [];
        // for(var k of arr2){
        //     for(var v of k){
        //         res.push(v);
        //     }
        // }

        // console.log(res);
        // var data = [];
        // for(var f of arr2){
        //     data.push(...f); // 先遍历原数组 每个元素又是个数组  
        //   展开以后加入到新的数组中
        // }
        // console.log(data)


        // var arr2 = [[1,2,3,4,5],[6,7,8,9],[10,11,12,13]];
        // var arr3 = [9,8,7,6];
        // console.log([...arr2,...arr3])// 合并两个数组 
        // //先展开然后放到一个空数组中 


        // 求数组的最大值 和最小值   
        // max   min  
        //Math.max(1,2,3,3,4,5);
        // var  arr3 = [9,8,7,6];

        // Math.max(...arr3)


        // 展开对象  
        // var o1 = {name:'张三',age:18};
        // var o2 = {height:'181cm',weight:'60kg'}

        // var o3 = {...o1,...o2}
        // console.log({...o3,sex:'男'});



        // 合并作用  

        // var arr = [100,200,300,400,500,600,700,800];
        // var [arr1,arr2,arr3,arr4,arr5,arr6,arr7,arr8] = arr;
        // var [arr11,...arr12] = arr;

        // console.log(arr11,arr12);
        // // 100 [200,300,400,500,600,700,800] ; 
        // var [arr13,arr14,...arr15] = arr;
        // console.log(arr13,arr14,arr15);
        // 100  200 [300,400,500,600,700,800]
        // var [arr13,...arr15,arr14] = arr;
        //  ...变量 一定放在解构列表最后面  报错  


        function test(){
            console.log(arguments)
        }

        test('a','b','c')


        function test1(...args){
            console.log(args)
        }

        test1('a','b','c')

        function test2(name,...args){
            console.log(args)
        }

        test2('a','b','c')

    </script>
</body>
</html>